<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<!-- NewPage -->
<html lang="en">
<head>

<title>DefaultReflectionPredicate (randoop 4.1.0 API)</title>

<link rel="stylesheet" type="text/css" href="../../javadocstyle.css" title="Style">
<script type="text/javascript" src="../../script.js"></script>
</head>
<body>
<script type="text/javascript"><!--
    try {
        if (location.href.indexOf('is-external=true') == -1) {
            parent.document.title="DefaultReflectionPredicate (randoop 4.1.0 API)";
        }
    }
    catch(err) {
    }
//-->
var methods = {"i0":10,"i1":10,"i2":10,"i3":10,"i4":10,"i5":10,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10};
var tabs = {65535:["t0","All Methods"],2:["t2","Instance Methods"],8:["t4","Concrete Methods"]};
var altColor = "altColor";
var rowColor = "rowColor";
var tableTab = "tableTab";
var activeTableTab = "activeTableTab";
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a name="navbar.top">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.top.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../index-all.html">Index</a></li>
<li><a href="../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../randoop/reflection/DefaultClassVisitor.html" title="class in randoop.reflection"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../randoop/reflection/EverythingAllowedPredicate.html" title="class in randoop.reflection"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../index.html?randoop/reflection/DefaultReflectionPredicate.html" target="_top">Frames</a></li>
<li><a href="DefaultReflectionPredicate.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_top");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.top">
<!--   -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
<!-- ======== START OF CLASS DATA ======== -->
<div class="header">
<div class="subTitle">randoop.reflection</div>
<h2 title="Class DefaultReflectionPredicate" class="title">Class DefaultReflectionPredicate</h2>
</div>
<div class="contentContainer">
<ul class="inheritance">
<li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li>randoop.reflection.DefaultReflectionPredicate</li>
</ul>
</li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>All Implemented Interfaces:</dt>
<dd><a href="../../randoop/reflection/ReflectionPredicate.html" title="interface in randoop.reflection">ReflectionPredicate</a></dd>
</dl>
<hr>
<br>
<pre>public class <span class="typeNameLabel">DefaultReflectionPredicate</span>
extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a>
implements <a href="../../randoop/reflection/ReflectionPredicate.html" title="interface in randoop.reflection">ReflectionPredicate</a></pre>
<div class="block">Default implementations of methods that indicate what is "under test": whether a class, method,
 constructor, or field should be used in Randoop's exploration. Returns true for public members,
 with some exceptions (see <a href="../../randoop/reflection/DefaultReflectionPredicate.html#doNotUseSpecialCase-java.lang.reflect.Method-"><code>doNotUseSpecialCase(java.lang.reflect.Method)</code></a> method).

 <p>If a method has the <code>@CheckRep</code> annotation, returns false (the method will be used as a
 contract checker, not as a method under test).</div>
</li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- =========== FIELD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.summary">
<!--   -->
</a>
<h3>Field Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation">
<caption><span>Fields</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Field and Description</th>
</tr>
<tr class="altColor">
<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../randoop/reflection/DefaultReflectionPredicate.html#omitFields">omitFields</a></span></code>
<div class="block">The set of fully-qualified field names to omit from generated tests.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.summary">
<!--   -->
</a>
<h3>Constructor Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation">
<caption><span>Constructors</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../randoop/reflection/DefaultReflectionPredicate.html#DefaultReflectionPredicate--">DefaultReflectionPredicate</a></span>()</code>
<div class="block">Create a reflection predicate.</div>
</td>
</tr>
<tr class="rowColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../randoop/reflection/DefaultReflectionPredicate.html#DefaultReflectionPredicate-java.util.Set-">DefaultReflectionPredicate</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;omitFields)</code>
<div class="block">DefaultReflectionFilter creates a filter object that uses default criteria for inclusion of
 reflection objects.</div>
</td>
</tr>
</table>
</li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!--   -->
</a>
<h3>Method Summary</h3>
<table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation">
<caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd">&nbsp;</span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd">&nbsp;</span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd">&nbsp;</span></span></caption>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr id="i0" class="altColor">
<td class="colFirst"><code>private boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../randoop/reflection/DefaultReflectionPredicate.html#definesNonBridgeMethod-java.lang.Class-java.lang.reflect.Method-">definesNonBridgeMethod</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;?&gt;&nbsp;c,
                      <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/reflect/Method.html?is-external=true" title="class or interface in java.lang.reflect">Method</a>&nbsp;goalMethod)</code>
<div class="block">Returns true if the class defines the given method, not as a bridge method.</div>
</td>
</tr>
<tr id="i1" class="rowColor">
<td class="colFirst"><code>private boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../randoop/reflection/DefaultReflectionPredicate.html#discardBridge-java.lang.reflect.Method-">discardBridge</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/reflect/Method.html?is-external=true" title="class or interface in java.lang.reflect">Method</a>&nbsp;m)</code>
<div class="block">Determines whether a bridge method should be discarded.</div>
</td>
</tr>
<tr id="i2" class="altColor">
<td class="colFirst"><code>private <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../randoop/reflection/DefaultReflectionPredicate.html#doNotUseSpecialCase-java.lang.reflect.Method-">doNotUseSpecialCase</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/reflect/Method.html?is-external=true" title="class or interface in java.lang.reflect">Method</a>&nbsp;m)</code>
<div class="block">Indicates methods for which this predicate should return false.</div>
</td>
</tr>
<tr id="i3" class="rowColor">
<td class="colFirst"><code>private boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../randoop/reflection/DefaultReflectionPredicate.html#isPublic-java.lang.Class-">isPublic</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;?&gt;&nbsp;c)</code>
<div class="block">Indicates whether the <code>Class</code> is public.</div>
</td>
</tr>
<tr id="i4" class="altColor">
<td class="colFirst"><code>private boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../randoop/reflection/DefaultReflectionPredicate.html#isRandoopInstrumentation-java.lang.reflect.Field-">isRandoopInstrumentation</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/reflect/Field.html?is-external=true" title="class or interface in java.lang.reflect">Field</a>&nbsp;f)</code>
<div class="block">Indicates that a field is generated by the covered-class instrumentation agent.</div>
</td>
</tr>
<tr id="i5" class="rowColor">
<td class="colFirst"><code>private boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../randoop/reflection/DefaultReflectionPredicate.html#isRandoopInstrumentation-java.lang.reflect.Method-">isRandoopInstrumentation</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/reflect/Method.html?is-external=true" title="class or interface in java.lang.reflect">Method</a>&nbsp;m)</code>&nbsp;</td>
</tr>
<tr id="i6" class="altColor">
<td class="colFirst"><code>private boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../randoop/reflection/DefaultReflectionPredicate.html#isVisibilityBridge-java.lang.reflect.Method-">isVisibilityBridge</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/reflect/Method.html?is-external=true" title="class or interface in java.lang.reflect">Method</a>&nbsp;m)</code>
<div class="block">Determines whether a bridge method is a <i>visibility</i> bridge, which allows access to a
 definition of the method in a non-visible superclass.</div>
</td>
</tr>
<tr id="i7" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../randoop/reflection/DefaultReflectionPredicate.html#test-java.lang.Class-">test</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;?&gt;&nbsp;c)</code>
<div class="block">Indicate whether Randoop should use a class.</div>
</td>
</tr>
<tr id="i8" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../randoop/reflection/DefaultReflectionPredicate.html#test-java.lang.reflect.Constructor-">test</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/reflect/Constructor.html?is-external=true" title="class or interface in java.lang.reflect">Constructor</a>&lt;?&gt;&nbsp;c)</code>
<div class="block">Indicate whether Randoop should use a constructor.</div>
</td>
</tr>
<tr id="i9" class="rowColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../randoop/reflection/DefaultReflectionPredicate.html#test-java.lang.reflect.Field-">test</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/reflect/Field.html?is-external=true" title="class or interface in java.lang.reflect">Field</a>&nbsp;f)</code>
<div class="block">Determines whether the name of a field is included among the omitted field names.</div>
</td>
</tr>
<tr id="i10" class="altColor">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../randoop/reflection/DefaultReflectionPredicate.html#test-java.lang.reflect.Method-">test</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/reflect/Method.html?is-external=true" title="class or interface in java.lang.reflect">Method</a>&nbsp;m)</code>
<div class="block">Indicate whether Randoop should use a method.</div>
</td>
</tr>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!--   -->
</a>
<h3>Methods inherited from class&nbsp;java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3>
<code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ FIELD DETAIL =========== -->
<ul class="blockList">
<li class="blockList"><a name="field.detail">
<!--   -->
</a>
<h3>Field Detail</h3>
<a name="omitFields">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>omitFields</h4>
<pre>private&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt; omitFields</pre>
<div class="block">The set of fully-qualified field names to omit from generated tests. See <a href="../../randoop/main/GenInputsAbstract.html#omit_field"><code>GenInputsAbstract.omit_field</code></a>.</div>
</li>
</ul>
</li>
</ul>
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!--   -->
</a>
<h3>Constructor Detail</h3>
<a name="DefaultReflectionPredicate--">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>DefaultReflectionPredicate</h4>
<pre>public&nbsp;DefaultReflectionPredicate()</pre>
<div class="block">Create a reflection predicate.</div>
</li>
</ul>
<a name="DefaultReflectionPredicate-java.util.Set-">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>DefaultReflectionPredicate</h4>
<pre>public&nbsp;DefaultReflectionPredicate(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/Set.html?is-external=true" title="class or interface in java.util">Set</a>&lt;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&gt;&nbsp;omitFields)</pre>
<div class="block">DefaultReflectionFilter creates a filter object that uses default criteria for inclusion of
 reflection objects.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>omitFields</code> - set of fully-qualified field names to omit</dd>
</dl>
</li>
</ul>
</li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!--   -->
</a>
<h3>Method Detail</h3>
<a name="test-java.lang.Class-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>test</h4>
<pre>public&nbsp;boolean&nbsp;test(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;?&gt;&nbsp;c)</pre>
<div class="block"><span class="descfrmTypeLabel">Description copied from interface:&nbsp;<code><a href="../../randoop/reflection/ReflectionPredicate.html#test-java.lang.Class-">ReflectionPredicate</a></code></span></div>
<div class="block">Indicate whether Randoop should use a class.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../randoop/reflection/ReflectionPredicate.html#test-java.lang.Class-">test</a></code>&nbsp;in interface&nbsp;<code><a href="../../randoop/reflection/ReflectionPredicate.html" title="interface in randoop.reflection">ReflectionPredicate</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>c</code> - the class to test</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if the class meets the predicate criteria, false otherwise</dd>
</dl>
</li>
</ul>
<a name="test-java.lang.reflect.Method-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>test</h4>
<pre>public&nbsp;boolean&nbsp;test(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/reflect/Method.html?is-external=true" title="class or interface in java.lang.reflect">Method</a>&nbsp;m)</pre>
<div class="block">Indicate whether Randoop should use a method.

 <p>Does checks for the several cases, including main methods, bridge methods (see <a href="../../randoop/reflection/DefaultReflectionPredicate.html#discardBridge-java.lang.reflect.Method-"><code>discardBridge(Method)</code></a>, non-bridge synthetic methods, non-visible methods, or methods with
 non-visible return types.

 <p>See the code for the full list.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../randoop/reflection/ReflectionPredicate.html#test-java.lang.reflect.Method-">test</a></code>&nbsp;in interface&nbsp;<code><a href="../../randoop/reflection/ReflectionPredicate.html" title="interface in randoop.reflection">ReflectionPredicate</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>m</code> - the method to test</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if the method meets the predicate criteria, false otherwise</dd>
</dl>
</li>
</ul>
<a name="isRandoopInstrumentation-java.lang.reflect.Method-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isRandoopInstrumentation</h4>
<pre>private&nbsp;boolean&nbsp;isRandoopInstrumentation(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/reflect/Method.html?is-external=true" title="class or interface in java.lang.reflect">Method</a>&nbsp;m)</pre>
</li>
</ul>
<a name="discardBridge-java.lang.reflect.Method-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>discardBridge</h4>
<pre>private&nbsp;boolean&nbsp;discardBridge(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/reflect/Method.html?is-external=true" title="class or interface in java.lang.reflect">Method</a>&nbsp;m)</pre>
<div class="block">Determines whether a bridge method should be discarded.

 <p>Bridge methods are synthetic overriding methods that are generated by the compiler to make
 certain calls type-correct.

 <p>Two of the three known cases involve forcing unchecked casts to allow type narrowing of
 return types (covariant return types) and instantiation of generic type parameters in methods.
 Both of these are situations that a programmer could view as overriding, but really aren't.
 These bridge methods do unchecked type conversions from the general type to the more specific
 type expected by the local method. As a result, if included for testing, Randoop would generate
 many tests that would confirm that there is an unchecked type conversion. So, we do not want to
 include these methods.

 <p>The third known case involves a public class inheriting a public method defined in a private
 class of the same package. The bridge method in the public class exposes the method outside of
 the package, and we *do* want to be able to call this method. (This sort of trick is useful in
 providing a facade to an API where implementation details are only accessible within the
 package.)

 <p>The only case in which a bridge method should be kept is when it is a visibility bridge.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>m</code> - the bridge method to test</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if the bridge method should be discarded, false otherwise</dd>
</dl>
</li>
</ul>
<a name="isVisibilityBridge-java.lang.reflect.Method-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isVisibilityBridge</h4>
<pre>private&nbsp;boolean&nbsp;isVisibilityBridge(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/reflect/Method.html?is-external=true" title="class or interface in java.lang.reflect">Method</a>&nbsp;m)
                            throws <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Error.html?is-external=true" title="class or interface in java.lang">Error</a></pre>
<div class="block">Determines whether a bridge method is a <i>visibility</i> bridge, which allows access to a
 definition of the method in a non-visible superclass.

 <p>The method is a visibility bridge if this class is public and some superclass defines the
 method as non-public.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>m</code> - the bridge method to test</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true iff <code>m</code> is a visibility bridge</dd>
<dt><span class="throwsLabel">Throws:</span></dt>
<dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Error.html?is-external=true" title="class or interface in java.lang">Error</a></code> - if a <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/SecurityException.html?is-external=true" title="class or interface in java.lang"><code>SecurityException</code></a> is thrown when accessing superclass methods</dd>
</dl>
</li>
</ul>
<a name="definesNonBridgeMethod-java.lang.Class-java.lang.reflect.Method-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>definesNonBridgeMethod</h4>
<pre>private&nbsp;boolean&nbsp;definesNonBridgeMethod(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;?&gt;&nbsp;c,
                                       <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/reflect/Method.html?is-external=true" title="class or interface in java.lang.reflect">Method</a>&nbsp;goalMethod)</pre>
<div class="block">Returns true if the class defines the given method, not as a bridge method. Returns false if
 the class does not define the given method, or if the class defines the method as a bridge
 method. Ignores inheritance of methods.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>c</code> - the possibly-containing class</dd>
<dd><code>goalMethod</code> - the method to search for</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if the class defines the method</dd>
</dl>
</li>
</ul>
<a name="isPublic-java.lang.Class-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>isPublic</h4>
<pre>private&nbsp;boolean&nbsp;isPublic(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a>&lt;?&gt;&nbsp;c)</pre>
<div class="block">Indicates whether the <code>Class</code> is public.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>c</code> - the class</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if <code>c</code> is a public class</dd>
</dl>
</li>
</ul>
<a name="doNotUseSpecialCase-java.lang.reflect.Method-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>doNotUseSpecialCase</h4>
<pre>private&nbsp;<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a>&nbsp;doNotUseSpecialCase(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/reflect/Method.html?is-external=true" title="class or interface in java.lang.reflect">Method</a>&nbsp;m)</pre>
<div class="block">Indicates methods for which this predicate should return false. See inline comments for
 details. This is a main place that Randoop controls which methods are methods under test.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>m</code> - the method to accept or reject for inclusion in methods under test</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>a non-null string giving a reason the method should be skipped, or null to not skip it</dd>
</dl>
</li>
</ul>
<a name="test-java.lang.reflect.Constructor-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>test</h4>
<pre>public&nbsp;boolean&nbsp;test(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/reflect/Constructor.html?is-external=true" title="class or interface in java.lang.reflect">Constructor</a>&lt;?&gt;&nbsp;c)</pre>
<div class="block">Indicate whether Randoop should use a constructor.

 <p>Use the constructor unless it is specifically omitted, is synthetic with anonymous
 parameters, or the class is abstract.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../randoop/reflection/ReflectionPredicate.html#test-java.lang.reflect.Constructor-">test</a></code>&nbsp;in interface&nbsp;<code><a href="../../randoop/reflection/ReflectionPredicate.html" title="interface in randoop.reflection">ReflectionPredicate</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>c</code> - the constructor to test</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if the constructor meets the predicate criteria, false otherwise</dd>
</dl>
</li>
</ul>
<a name="test-java.lang.reflect.Field-">
<!--   -->
</a>
<ul class="blockList">
<li class="blockList">
<h4>test</h4>
<pre>public&nbsp;boolean&nbsp;test(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/reflect/Field.html?is-external=true" title="class or interface in java.lang.reflect">Field</a>&nbsp;f)</pre>
<div class="block">Determines whether the name of a field is included among the omitted field names.</div>
<dl>
<dt><span class="overrideSpecifyLabel">Specified by:</span></dt>
<dd><code><a href="../../randoop/reflection/ReflectionPredicate.html#test-java.lang.reflect.Field-">test</a></code>&nbsp;in interface&nbsp;<code><a href="../../randoop/reflection/ReflectionPredicate.html" title="interface in randoop.reflection">ReflectionPredicate</a></code></dd>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>f</code> - field to test</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if field name does not occur in omitFields pattern, and false if it does</dd>
</dl>
</li>
</ul>
<a name="isRandoopInstrumentation-java.lang.reflect.Field-">
<!--   -->
</a>
<ul class="blockListLast">
<li class="blockList">
<h4>isRandoopInstrumentation</h4>
<pre>private&nbsp;boolean&nbsp;isRandoopInstrumentation(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/reflect/Field.html?is-external=true" title="class or interface in java.lang.reflect">Field</a>&nbsp;f)</pre>
<div class="block">Indicates that a field is generated by the covered-class instrumentation agent.

 <p>Tests whether the field begins with <code>"randoop_"</code>.</div>
<dl>
<dt><span class="paramLabel">Parameters:</span></dt>
<dd><code>f</code> - the field</dd>
<dt><span class="returnLabel">Returns:</span></dt>
<dd>true if the field name</dd>
</dl>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</div>
</div>
<!-- ========= END OF CLASS DATA ========= -->
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a name="navbar.bottom">
<!--   -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a name="navbar.bottom.firstrow">
<!--   -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../overview-summary.html">Overview</a></li>
<li><a href="package-summary.html">Package</a></li>
<li class="navBarCell1Rev">Class</li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../index-all.html">Index</a></li>
<li><a href="../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList">
<li><a href="../../randoop/reflection/DefaultClassVisitor.html" title="class in randoop.reflection"><span class="typeNameLink">Prev&nbsp;Class</span></a></li>
<li><a href="../../randoop/reflection/EverythingAllowedPredicate.html" title="class in randoop.reflection"><span class="typeNameLink">Next&nbsp;Class</span></a></li>
</ul>
<ul class="navList">
<li><a href="../../index.html?randoop/reflection/DefaultReflectionPredicate.html" target="_top">Frames</a></li>
<li><a href="DefaultReflectionPredicate.html" target="_top">No&nbsp;Frames</a></li>
</ul>
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../allclasses-noframe.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
  allClassesLink = document.getElementById("allclasses_navbar_bottom");
  if(window==top) {
    allClassesLink.style.display = "block";
  }
  else {
    allClassesLink.style.display = "none";
  }
  //-->
</script>
</div>
<div>
<ul class="subNavList">
<li>Summary:&nbsp;</li>
<li>Nested&nbsp;|&nbsp;</li>
<li><a href="#field.summary">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.summary">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.summary">Method</a></li>
</ul>
<ul class="subNavList">
<li>Detail:&nbsp;</li>
<li><a href="#field.detail">Field</a>&nbsp;|&nbsp;</li>
<li><a href="#constructor.detail">Constr</a>&nbsp;|&nbsp;</li>
<li><a href="#method.detail">Method</a></li>
</ul>
</div>
<a name="skip.navbar.bottom">
<!--   -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</body>
</html>
